<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<!-- Casting SPELs in Lisp - Emacs Lisp Edition, a Comic Book
     Written by Conrad Barski, M.D., http://lisperati.com
     Edited by James A. Webb, http://uberkode.com -->

<head>

  <title>Casting SPELs in Lisp (7)</title>
  <meta http-equiv="content-type" content="text/html;charset=utf-8" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="author" content="James A. Webb" />
  <meta name="date" content="2007-09-16T00:00:00+00:00" />
  <meta name="keywords" content="Emacs, Lisp" />

</head>

<body>

<center>

<table cellspacing="10" width="500">
  <tr>
    <td>
      Additionally, the Emacs Lisp interpreter uses two modes 
      when it reads your code: a <i>Code</i> mode and a <i>Data</i> 
      mode. When you're in <i>Data</i> mode, you can put anything 
      you want into your lists. However, the interpreter first 
      starts off reading your code in <i>Code</i> mode - in <i>Code</i> 
      mode, your lists need to be a special type of list called a form:
    </td>
  </tr>
  <tr>
    <td align="center">
      <img src="../images/lisp-form.jpg" 
        width="500" 
        height="281" 
        alt="A form, with the foo command highlighted" />
    </td>
  </tr>
  <tr>
    <td>
      A form is a list where the first symbol in the list has to 
      be a special word that the interpreter can understand - 
      usually the name of a function. In this case, the interpreter 
      will send the other items of the list to the function as 
      parameters. When it reads the text for these parameters, 
      it will usually assume that they are also in <i>Code</i> mode, 
      unless you tell it to flip into <i>Data</i> mode.
    </td>
  </tr>
  <tr>
    <td align="center">
      &lt;&lt; <a href="casting-spels-emacs-1.html">begin</a>
      &lt; <a href="casting-spels-emacs-6.html">previous</a> - 
      <a href="casting-spels-emacs-8.html">next</a> &gt;
      <a href="casting-spels-emacs-35.html" >end</a> &gt;&gt;
    </td>
  </tr>
</table>

</center>

</body>

</html>